C++语言简介

梦想不会自己发光,真正闪耀的是那个为梦狂奔的你。献给知行的孩子们!(Eric.He著)


  本教程将从C/C++语言的起源、创始人、核心特点、发展历程到第一个Hello World程序,全面介绍C++语言的基础认知,帮助你建立对这门经典编程语言的核心理解。

教程目录导航

一、C/C++语言简介

C语言和C++语言是编程领域中极具影响力的两门编程语言,二者一脉相承又各有侧重,是系统开发、底层编程、高性能应用开发的核心工具。

C语言简介

C语言是一门面向过程的通用编程语言,由贝尔实验室在20世纪70年代初开发。它以简洁、高效、可移植性强著称,是操作系统、编译器、嵌入式系统等底层开发的首选语言,被誉为“编程语言的基石”。C语言仅提供基础的语法结构和数据类型,强调程序员对内存和流程的直接控制,兼具高级语言的易用性和低级语言的高效性。

C++语言简介

C++语言是在C语言基础上扩展而来的多范式编程语言,既兼容C语言的全部特性(面向过程),又引入了面向对象编程(OOP)、泛型编程、函数式编程等现代编程范式。C++保留了C语言的高效性和底层控制能力,同时增加了封装、继承、多态等面向对象特性,使其既能开发底层系统软件,也能构建大型复杂的应用程序(如游戏引擎、数据库、工业软件等)。

核心关系:C++是C语言的超集(Superset),绝大多数合法的C语言代码可以直接在C++编译器中编译运行,C++完全兼容C语言的语法和功能。

二、C/C++语言的创始人

2.1 C语言创始人

C语言由丹尼斯·里奇(Dennis MacAlistair Ritchie,1941-2011)于1972年在贝尔实验室(Bell Labs)开发,他也被称为“C语言之父”。

2.2 C++语言创始人

C++语言由本贾尼·斯特劳斯特卢普(Bjarne Stroustrup,1950-至今)于1983年在贝尔实验室开发,他被称为“C++语言之父”。

三、C++语言的特点

C++语言融合了C语言的高效性和现代编程的灵活性,核心特点如下:

C++的核心优势:在“高性能”和“高抽象”之间取得了极佳的平衡,既能做底层硬件控制,也能构建大型复杂应用。

四、C++语言发展历程

C++自1983年命名以来,经历了多次标准更新,逐步完善和扩展功能,核心版本演进如下:

版本/标准 发布年份 核心特性
C++98 1998 第一个官方C++标准,确立面向对象核心特性(类、继承、多态),引入STL;
C++03 2003 对C++98的bug修复和小幅优化,无重大新特性;
C++11 2011 里程碑式更新,引入智能指针、lambda表达式、范围for循环、移动语义、auto关键字等;
C++14 2014 对C++11的补充,优化lambda表达式、constexpr等特性;
C++17 2017 引入结构化绑定、std::optional、文件系统库、并行算法等;
C++20 2020 引入概念(Concepts)、协程、模块(Modules)、范围(Ranges)等重大特性;
C++23 2023 完善C++20特性,新增字符串格式化、静态操作符等便捷功能;

发展趋势:C++标准始终围绕“保持高效性”和“提升开发效率”两大核心,逐步吸收现代编程语言的优秀特性,同时避免引入性能开销。

五、Hello World!实例

Hello World是学习任何编程语言的第一个程序,用于验证开发环境和基础语法,以下是C++和C语言版本的对比实现:

5.1 C++版本Hello World


// C++ Hello World 程序
#include <iostream>  // 引入输入输出流头文件

// 主函数:程序入口点
int main() {
    // 输出Hello World到控制台
    std::cout << "Hello World!" << std::endl;
    
    // 返回0表示程序正常结束
    return 0;
}
            

5.2 C版本Hello World(对比)


// C Hello World 程序
#include <stdio.h>  // 引入标准输入输出头文件

// 主函数:程序入口点
int main() {
    // 输出Hello World到控制台
    printf("Hello World!\n");
    
    // 返回0表示程序正常结束
    return 0;
}
            

5.3 代码核心解释

编译运行说明:
1. C++程序:使用g++编译器(g++ hello.cpp -o hello),运行./hello(Linux)或hello.exe(Windows);
2. C程序:使用gcc编译器(gcc hello.c -o hello),运行方式同上。

六、总结

C++语言兼具底层控制能力和高级抽象特性,是编程学习中承上启下的重要语言,掌握其基础认知是后续深入学习的关键。


返回顶部